﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Collections;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02000E4B RID: 3659
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class RogueAeonInfo : IMessage<RogueAeonInfo>, IMessage, IEquatable<RogueAeonInfo>, IDeepCloneable<RogueAeonInfo>, IBufferMessage
	{
		// Token: 0x17002E8B RID: 11915
		// (get) Token: 0x0600A45D RID: 42077 RVA: 0x001BB3F3 File Offset: 0x001B95F3
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<RogueAeonInfo> Parser
		{
			get
			{
				return RogueAeonInfo._parser;
			}
		}

		// Token: 0x17002E8C RID: 11916
		// (get) Token: 0x0600A45E RID: 42078 RVA: 0x001BB3FA File Offset: 0x001B95FA
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return RogueAeonInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17002E8D RID: 11917
		// (get) Token: 0x0600A45F RID: 42079 RVA: 0x001BB40C File Offset: 0x001B960C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return RogueAeonInfo.Descriptor;
			}
		}

		// Token: 0x0600A460 RID: 42080 RVA: 0x001BB413 File Offset: 0x001B9613
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueAeonInfo()
		{
		}

		// Token: 0x0600A461 RID: 42081 RVA: 0x001BB428 File Offset: 0x001B9628
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueAeonInfo(RogueAeonInfo other) : this()
		{
			this.unlockedAeonNum_ = other.unlockedAeonNum_;
			this.unlockedAeonEnhanceNum_ = other.unlockedAeonEnhanceNum_;
			this.aeonIdList_ = other.aeonIdList_.Clone();
			this.isUnlocked_ = other.isUnlocked_;
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600A462 RID: 42082 RVA: 0x001BB481 File Offset: 0x001B9681
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueAeonInfo Clone()
		{
			return new RogueAeonInfo(this);
		}

		// Token: 0x17002E8E RID: 11918
		// (get) Token: 0x0600A463 RID: 42083 RVA: 0x001BB489 File Offset: 0x001B9689
		// (set) Token: 0x0600A464 RID: 42084 RVA: 0x001BB491 File Offset: 0x001B9691
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint UnlockedAeonNum
		{
			get
			{
				return this.unlockedAeonNum_;
			}
			set
			{
				this.unlockedAeonNum_ = value;
			}
		}

		// Token: 0x17002E8F RID: 11919
		// (get) Token: 0x0600A465 RID: 42085 RVA: 0x001BB49A File Offset: 0x001B969A
		// (set) Token: 0x0600A466 RID: 42086 RVA: 0x001BB4A2 File Offset: 0x001B96A2
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint UnlockedAeonEnhanceNum
		{
			get
			{
				return this.unlockedAeonEnhanceNum_;
			}
			set
			{
				this.unlockedAeonEnhanceNum_ = value;
			}
		}

		// Token: 0x17002E90 RID: 11920
		// (get) Token: 0x0600A467 RID: 42087 RVA: 0x001BB4AB File Offset: 0x001B96AB
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<uint> AeonIdList
		{
			get
			{
				return this.aeonIdList_;
			}
		}

		// Token: 0x17002E91 RID: 11921
		// (get) Token: 0x0600A468 RID: 42088 RVA: 0x001BB4B3 File Offset: 0x001B96B3
		// (set) Token: 0x0600A469 RID: 42089 RVA: 0x001BB4BB File Offset: 0x001B96BB
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool IsUnlocked
		{
			get
			{
				return this.isUnlocked_;
			}
			set
			{
				this.isUnlocked_ = value;
			}
		}

		// Token: 0x0600A46A RID: 42090 RVA: 0x001BB4C4 File Offset: 0x001B96C4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as RogueAeonInfo);
		}

		// Token: 0x0600A46B RID: 42091 RVA: 0x001BB4D4 File Offset: 0x001B96D4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(RogueAeonInfo other)
		{
			return other != null && (other == this || (this.UnlockedAeonNum == other.UnlockedAeonNum && this.UnlockedAeonEnhanceNum == other.UnlockedAeonEnhanceNum && this.aeonIdList_.Equals(other.aeonIdList_) && this.IsUnlocked == other.IsUnlocked && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600A46C RID: 42092 RVA: 0x001BB544 File Offset: 0x001B9744
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.UnlockedAeonNum != 0U)
			{
				num ^= this.UnlockedAeonNum.GetHashCode();
			}
			if (this.UnlockedAeonEnhanceNum != 0U)
			{
				num ^= this.UnlockedAeonEnhanceNum.GetHashCode();
			}
			num ^= this.aeonIdList_.GetHashCode();
			if (this.IsUnlocked)
			{
				num ^= this.IsUnlocked.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600A46D RID: 42093 RVA: 0x001BB5C3 File Offset: 0x001B97C3
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600A46E RID: 42094 RVA: 0x001BB5CB File Offset: 0x001B97CB
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600A46F RID: 42095 RVA: 0x001BB5D4 File Offset: 0x001B97D4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.UnlockedAeonEnhanceNum != 0U)
			{
				output.WriteRawTag(16);
				output.WriteUInt32(this.UnlockedAeonEnhanceNum);
			}
			this.aeonIdList_.WriteTo(ref output, RogueAeonInfo._repeated_aeonIdList_codec);
			if (this.UnlockedAeonNum != 0U)
			{
				output.WriteRawTag(104);
				output.WriteUInt32(this.UnlockedAeonNum);
			}
			if (this.IsUnlocked)
			{
				output.WriteRawTag(112);
				output.WriteBool(this.IsUnlocked);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600A470 RID: 42096 RVA: 0x001BB65C File Offset: 0x001B985C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.UnlockedAeonNum != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.UnlockedAeonNum);
			}
			if (this.UnlockedAeonEnhanceNum != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.UnlockedAeonEnhanceNum);
			}
			num += this.aeonIdList_.CalculateSize(RogueAeonInfo._repeated_aeonIdList_codec);
			if (this.IsUnlocked)
			{
				num += 2;
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600A471 RID: 42097 RVA: 0x001BB6D4 File Offset: 0x001B98D4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(RogueAeonInfo other)
		{
			if (other == null)
			{
				return;
			}
			if (other.UnlockedAeonNum != 0U)
			{
				this.UnlockedAeonNum = other.UnlockedAeonNum;
			}
			if (other.UnlockedAeonEnhanceNum != 0U)
			{
				this.UnlockedAeonEnhanceNum = other.UnlockedAeonEnhanceNum;
			}
			this.aeonIdList_.Add(other.aeonIdList_);
			if (other.IsUnlocked)
			{
				this.IsUnlocked = other.IsUnlocked;
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600A472 RID: 42098 RVA: 0x001BB749 File Offset: 0x001B9949
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600A473 RID: 42099 RVA: 0x001BB754 File Offset: 0x001B9954
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num <= 48U)
				{
					if (num == 16U)
					{
						this.UnlockedAeonEnhanceNum = input.ReadUInt32();
						continue;
					}
					if (num == 48U)
					{
						goto IL_44;
					}
				}
				else
				{
					if (num == 50U)
					{
						goto IL_44;
					}
					if (num == 104U)
					{
						this.UnlockedAeonNum = input.ReadUInt32();
						continue;
					}
					if (num == 112U)
					{
						this.IsUnlocked = input.ReadBool();
						continue;
					}
				}
				this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
				continue;
				IL_44:
				this.aeonIdList_.AddEntriesFrom(ref input, RogueAeonInfo._repeated_aeonIdList_codec);
			}
		}

		// Token: 0x040042EE RID: 17134
		private static readonly MessageParser<RogueAeonInfo> _parser = new MessageParser<RogueAeonInfo>(() => new RogueAeonInfo());

		// Token: 0x040042EF RID: 17135
		private UnknownFieldSet _unknownFields;

		// Token: 0x040042F0 RID: 17136
		public const int UnlockedAeonNumFieldNumber = 13;

		// Token: 0x040042F1 RID: 17137
		private uint unlockedAeonNum_;

		// Token: 0x040042F2 RID: 17138
		public const int UnlockedAeonEnhanceNumFieldNumber = 2;

		// Token: 0x040042F3 RID: 17139
		private uint unlockedAeonEnhanceNum_;

		// Token: 0x040042F4 RID: 17140
		public const int AeonIdListFieldNumber = 6;

		// Token: 0x040042F5 RID: 17141
		private static readonly FieldCodec<uint> _repeated_aeonIdList_codec = FieldCodec.ForUInt32(50U);

		// Token: 0x040042F6 RID: 17142
		private readonly RepeatedField<uint> aeonIdList_ = new RepeatedField<uint>();

		// Token: 0x040042F7 RID: 17143
		public const int IsUnlockedFieldNumber = 14;

		// Token: 0x040042F8 RID: 17144
		private bool isUnlocked_;
	}
}
